1. Technical Field of the Invention
The present invention relates in general to the telecommunications field and, in particular, to a method and apparatus for improving the performance of a packet communications system that uses a multiple access reservation type of protocol.
2. Description of Related Art
Generally, in a conventional mobile packet radio communications system, a base station (BS) communicates with a plurality of mobile stations (MSs) over one or more shared packet radio channels. Downlink packet traffic is scheduled by the BS, whereby downlink contention between MSs is avoided. However, in order for the MSs to gain access to the BS on the uplink, the MSs compete using a random multiple access protocol, which inevitably leads to contention and collisions on the uplink.
One multiple access type of protocol, which is suitable for use with a time division multiple access (TDMA) communications system (e.g., a TDMA cellular radio system) , is a reservation slotted-ALOHA multiple access protocol. For example, on the uplink, a MS can transmit a random access request message over the air interface to the BS, in accordance with a conventional slotted-ALOHA multiple access protocol. If the BS successfully receives that random access request message, it allocates or reserves a traffic channel for that MS, and thereafter contention-free (e.g., uncontended) packet transfers can be made between that MS and the BS.
Typically, if a MS does not receive a traffic channel reservation from a BS within a predetermined period of time, that MS will re-transmit the random access request message. A channel reservation may not be made by the BS for a number of reasons, such as, for example, if the random access request message has collided with another message on the uplink, or the request message has experienced an error during transmission. Moreover, the BS may have experienced a momentary capacity overload, so that any random access request correctly received during the overload period could not be processed.
As mentioned earlier, on the downlink, the BS (or some other node on the network side of the system) schedules the transmissions to different MSs. However, if the MSs being scheduled for downlink transmission have different levels of priority, the BS (or scheduling network node) must schedule those transmissions while taking the different MSs' priorities into account. Consequently, the need to prioritize the scheduling of different downlink transmissions leads to variable delays in scheduling transmissions for individual MSs, especially during periods of traffic congestion. These delays can vary depending upon how much of the competing traffic has the same or a higher priority. Typically, the lower priority MSs will experience the longer scheduling delays.
The General Packet Radio Service (GPRS) is a new packet data service that is being specified for use in the digital Global System for Mobile Communications (GSM). The GPRS standard requires the use of a set of communications channels optimized for packet data. The bandwidth required for individual users (i.e., MSs) can be provided by a trunked multi-channel operation. In other words, packets can be sent to or from a MS over a plurality of parallel channels. Two or more priority levels are used when scheduling packet transfers (for both the uplink and downlink). Although the GPRS is a new service, the performance optimization problems that are associated with the GPRS (e.g., in the GSM) are applicable to other packet data services and multiple access reservation systems as well. For a comprehensive overview of the GSM and, in particular, GSM channel resource management and allocation, refer to "The GSM System for Mobile Communications" by M. Mouly and M. B. Pautet, Cell & Sys., Copyright 1992 (ISBN: 2-9507190-0-7).
For example, referring to the current GPRS standard (GSM Technical Specification GSM 04.60, Version 0.9.1, Sep., 26, 1996).COPYRGT., the physical channel dedicated to packet data traffic in the GPRS is called a Packet Data Channel (PDCH). For a GPRS mobile-originated packet transfer, a MS initiates the packet transfer by making a random access request on the PDCH uplink over the Packet Random Access Channel (PRACH). The PRACH can be referred to as a "random access sub-channel". The MS is allowed to select the random access sub-channel to make an access request, when the uplink state flag (USF) associated with the random access sub-channel is set to "free". The USF, which comprises certain bits at the beginning of each Radio Link Control (RLC) block sent on the downlink, is used on the PDCH to enable multiplexing of the uplink traffic. Currently, for the GPRS, one USF value can be used to denote that the random access sub-channel is "free", and three other USF values used to reserve the uplink for three different MSs. As an alternative to using the USF to determine the availability of a random access sub-channel, the MS can select a random access sub-channel according to a pre-defined rule. The GPRS access request includes information that identifies the MS, and can also include priority level information for that MS.
The network responds to a random access request by transmitting a channel reservation command on the PDCH downlink over the Packet Access Grant Channel (PAGCH). The channel reservation command assigns (reserves) future time slots to that MS for uplink transfers of a variable length packet. If the network does not respond to the MS's random access request, the MS will make the request again, but only after a predetermined (or random) period of time. The MS transmits the variable length packet in the reserved time slots. In the GPRS, the packet is transmitted on the PDCH over the Packet Data Traffic Channel (PDTCH). The network sends an acknowledgment message to the MS if the complete packet has been correctly received. Otherwise, the MS re-transmits either the complete packet or any portions of the packet where transmission errors have occurred.
For a GPRS mobile-terminated packet transfer, th network initiates a transfer to a MS by (optionally paging the MS to which the packet is addressed. In the GPRS, the page is transmitted on the PDCH over the Packet Paging Channel (PPCH), or on the conventional GSM Paging Channel (PCH). However, the addressed MS does not have to be paged if the network knows the MS's current cell location. If paged successfully, the MS initiates a paging response by transmitting a packet channel request on the PRACH or RACH. The network responds with a packet resource assignment message on the Packet Associated Control Channel (PACCH) The packet is then transmitted to the MS over the PDTCH. The network's scheduling of the packet transmission is based on the current traffic load and the priority that was given to the packet. The MS sends an acknowledgment message to the network if the complete packet has been correctly received. Otherwise, the network re-transmits either the complete packet or any portions of the packet where transmission errors have occurred.
A problem experienced with such random access reservation type protocols is that the MSs experience various packet transfer delays. For example, every uplink packet transfer is preceded by the channel reservation process (unless the packets being transferred are concatenated). A MS sends a random access request message to the network, which the network must successfully receive. Consequently, there is a delay until the access can be obtained. If a channel reservation message is not received by the MS, the timing associated with re-transmitting the access request message is controlled by an independent timer, which adds yet another delay. Additionally, if the network's access capacity is momentarily overloaded, more random access requests may be received than can be processed during that time, which triggers respective countdowns until the next access attempts can be made. Those delays are compounded and in addition to the delays associated with prioritizing the uplink packet transfers, which results in numerous variable delays encountered in accessing the uplink channel.
On the downlink, the size of the current traffic load, and the process of prioritizing the downlink packet transfers, are considerations that also result in variable delays when the channel resources allocated for the packet data service transmissions are insufficient. As such, both the uplink and downlink packet traffic are thus subject to a variable quality of service (QoS), which can be expressed in terms of both variable time delays and decreased throughput.
The GPRS standard specifies four different QoS levels, which are consequently mapped across the different communication layers of the air interface. On the lower two layers (medium access control layer and physical layer), these four QoS levels are mapped onto four priority levels. These four priority levels are used to prioritize access to the system. All of the GPRS dedicated PDCHs are shared resources, for which packets departing for, and emanating from, different MSs compete with each other for access. The system's resource manager is tasked to allocate a sufficient number of dedicated PDCHs, which can both handle the allocated load and meet the QoS requirements for all four priority levels. However, a significant problem arises when the lower priority levels are suppressed, because the load required by the higher priority levels can exceed the channel resources provided. Currently, the resource manager would have to either allocate more resources (at the expense of other services), or operate with a degraded QoS.